package com.swa99ylum.pxf.cell.styler;

import org.apache.poi.xssf.usermodel.XSSFCell;


/**
 * 简单样式器：开发者 只需提供 目标样式 所在的 单元格的 地址（例如：A1、E3），
 * <br> 就能：
 * <br> step1、从 styleSheet 中，获取 XSSFCellStyle
 * <br> step2、直接设置给 XSSFCell
 * 
 * @author lsy
 */
public class SimpleStyler extends CellStyler {
	
	/**
	 * styleSheet 中，目标样式 所在的 单元格的 地址，例如：A1、E3
	 */
	private String styleAddress;
	
	
	
	/**
	 * 构造器
	 * @param styleAddress : 目标样式 所在的 单元格的 地址，例如：A1、E3
	 */
	public SimpleStyler(String styleAddress) {
		super();
		this.styleAddress = styleAddress;
	}

	
	
	/**
	 * 核心方法：
	 * <br> step1、从 styleSheet 中，获取 XSSFCellStyle
	 * <br> step2、直接设置给 XSSFCell
	 */
	@Override
	public void doStyle(XSSFCell cell, Object cellValue) {
		
		cell.setCellStyle(getStyle(styleAddress));
		
	}
	

	/*
	 * getStyle() 会去 styleMap 中取 cellStyle
	 * 
	 * 但是："styleMap 的 构建" 比 "SimpleStyler 的 初始化" 要晚，所以不能这么做
	 
	private XSSFCellStyle style;
	
	public SimpleStyler(String address) {
		super();
		this.style = getStyle(address);
	}
	
	 */

}
